├── .editorconfig ├── .gitignore ├── .npmignore ├── Gruntfile.js ├── License.md ├── Readme.md ├── apple-touch-icon-114x114.png ├── apple-touch-icon-120x120.png ├── apple-touch-icon-144x144.png ├── apple-touch-icon-152x152.png ├── apple-touch-icon-180x180.png ├── apple-touch-icon-57x57.png ├── apple-touch-icon-60x60.png ├── apple-touch-icon-72x72.png ├── apple-touch-icon-76x76.png ├── apple-touch-icon-precomposed.png ├── apple-touch-icon.png ├── bower.json ├── browserconfig.xml ├── css ├── style.css └── style.min.css ├── favicon-160x160.png ├── favicon-16x16.png ├── favicon-192x192.png ├── favicon-32x32.png ├── favicon-96x96.png ├── favicon.ico ├── index.html ├── mstile-144x144.png ├── mstile-150x150.png ├── mstile-310x150.png ├── mstile-310x310.png ├── mstile-70x70.png ├── package.json └── pictures ├── LiveReload_350.png ├── anf.gif ├── autofilename.gif ├── brackethighlighter.png ├── codemap.gif ├── comand-panels.gif ├── comments.png ├── cover.jpg ├── cover_else.jpg ├── cover_falcon.jpg ├── cover_yoda.jpg ├── csscomb.gif ├── emmet.png ├── fuzzy-search.gif ├── gitgutter.gif ├── guttercolor.png ├── keybind.gif ├── layout.gif ├── linter.png ├── logo.png ├── logo.svg ├── multiple-cursors.gif ├── package-control.gif ├── picture.jpg ├── plain-tasks.png ├── plugins.jpg ├── preferences.jpg ├── preview.jpg ├── projects.gif ├── search.gif ├── settings.gif ├── sftp.gif ├── sftp.png ├── sidebarenh.png ├── snippets.gif ├── snippets.jpg ├── space.jpg ├── st-logo.jpg ├── themes.gif ├── trailingspaces.gif └── zentabs.gif /.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig is awesome: http://EditorConfig.org 2 | root = true 3 | 4 | [*] 5 | indent_style = tab 6 | end_of_line = lf 7 | trim_trailing_whitespace = true 8 | insert_final_newline = true 9 | charset = utf-8 10 | 11 | [{bower.json,package.json,.travis.yml}] 12 | indent_style = space 13 | indent_size = 2 -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | bower_components 3 | assets 4 | styl 5 | sublime-presentation.sublime-project 6 | sublime-presentation.sublime-workspace 7 | sublime-screencast.TODO -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | * 2 | !pictures/** 3 | !index.html 4 | !License.md 5 | !Readme.md 6 | !package.json 7 | -------------------------------------------------------------------------------- /Gruntfile.js: -------------------------------------------------------------------------------- 1 | module.exports = function(grunt) { 2 | 3 | require('load-grunt-tasks')(grunt); 4 | 5 | grunt.initConfig({ 6 | watch: { 7 | stylus: { 8 | files: ['styl/**/*.styl'], 9 | tasks: ['notify:stylus','stylus', 'cssmin'], 10 | options: { 11 | spawn: false, 12 | livereload: true 13 | } 14 | }, 15 | livereload: { 16 | options: { livereload: true }, 17 | files: ['**/*.html'] 18 | } 19 | }, 20 | bump: { 21 | options: { 22 | files: ['package.json', 'bower.json'], 23 | commitFiles: ['package.json', 'bower.json'], 24 | pushTo: 'origin' 25 | } 26 | }, 27 | copy: { 28 | prepare: { 29 | files: [{ 30 | src: [ 31 | '**', 32 | '!node_modules/**', 33 | '!bower_components/**', 34 | '!Contributing.md', 35 | '!Gruntfile.js', 36 | '!License.md', 37 | '!Readme.md', 38 | '!bower.json', 39 | '!package.json', 40 | 'assets/**', 41 | 'screencasts/**' 42 | ], 43 | dest: 'temp/pres/' 44 | },{ 45 | expand: true, 46 | cwd: 'node_modules/shower-core/', 47 | src: [ 48 | '**', 49 | '!package.json', 50 | '!Readme.md' 51 | ], 52 | dest: 'temp/pres/shower/' 53 | },{ 54 | expand: true, 55 | cwd: 'node_modules/shower-ribbon/', 56 | src: [ 57 | '**', 58 | '!package.json', 59 | '!Readme.md' 60 | ], 61 | dest: 'temp/pres/shower/themes/ribbon/' 62 | },{ 63 | expand: true, 64 | cwd: 'node_modules/shower-bright/', 65 | src: [ 66 | '**', 67 | '!package.json', 68 | '!Readme.md' 69 | ], 70 | dest: 'temp/pres/shower/themes/bright/' 71 | }] 72 | } 73 | }, 74 | replace: { 75 | core: { 76 | src: 'temp/pres/index.html', 77 | overwrite: true, 78 | replacements: [{ 79 | from: /(node_modules|bower_components)\/shower-core/g, 80 | to: 'shower' 81 | },{ 82 | from: /(node_modules|bower_components)\/shower-(ribbon|bright)/g, 83 | to: 'shower/themes/$2' 84 | }] 85 | }, 86 | themes: { 87 | src: 'temp/pres/shower/themes/*/index.html', 88 | overwrite: true, 89 | replacements: [{ 90 | from: '../shower-core', to: '../..' 91 | }] 92 | } 93 | }, 94 | 'gh-pages': { 95 | options: { 96 | base: 'temp/pres', 97 | clone: 'temp/clone' 98 | }, 99 | src: ['**'] 100 | }, 101 | compress: { 102 | shower: { 103 | options: { 104 | archive: 'archive.zip' 105 | }, 106 | files: [{ 107 | expand: true, 108 | cwd: 'temp/pres/', 109 | src: '**', 110 | dest: '.' 111 | }] 112 | } 113 | }, 114 | stylus: { 115 | compile: { 116 | options: { 117 | paths: ['styl'], 118 | urlfunc: 'url64', 119 | 'include css': true, 120 | compress: false 121 | }, 122 | files: { 123 | 'css/style.css': ['styl/style.styl'] 124 | } 125 | } 126 | }, 127 | cssmin: { 128 | dist: { 129 | src: 'css/style.css', 130 | dest: 'css/style.min.css' 131 | } 132 | }, 133 | notify: { 134 | stylus: { 135 | options: { 136 | title: 'Готово!', // optional 137 | message: 'STYLUS скомпилирован', //required 138 | } 139 | } 140 | }, 141 | imagemin: { 142 | all: { 143 | files: [{ 144 | expand: true, // Enable dynamic expansion 145 | cwd: 'pictures/', // Src matches are relative to this path 146 | src: ['**/*.{png,jpg,gif}'] // Actual patterns to match 147 | // dest: 'pictures/' // Destination path prefix 148 | }] 149 | } 150 | }, 151 | clean: ['temp'] 152 | }); 153 | 154 | grunt.registerTask('publish', [ 155 | 'copy', 156 | 'replace', 157 | 'gh-pages', 158 | 'clean' 159 | ]); 160 | 161 | grunt.registerTask('archive', [ 162 | 'copy', 163 | 'replace', 164 | 'compress', 165 | 'clean' 166 | ]); 167 | 168 | grunt.registerTask('w', ['watch']); 169 | 170 | }; 171 | -------------------------------------------------------------------------------- /License.md: -------------------------------------------------------------------------------- 1 | # The MIT License 2 | 3 | Copyright © 2010–2014 Vadim Makeev, http://pepelsbey.net/ 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 6 | 7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 10 | 11 | --- 12 | 13 | # Лицензия MIT 14 | 15 | Copyright © 2010–2014 Вадим Макеев, http://pepelsbey.net/ 16 | 17 | Данная лицензия разрешает лицам, получившим копию данного программного обеспечения и сопутствующей документации (в дальнейшем именуемыми «Программное Обеспечение»), безвозмездно использовать Программное Обеспечение без ограничений, включая неограниченное право на использование, копирование, изменение, добавление, публикацию, распространение, сублицензирование и/или продажу копий Программного Обеспечения, также как и лицам, которым предоставляется данное Программное Обеспечение, при соблюдении следующих условий: 18 | 19 | Указанное выше уведомление об авторском праве и данные условия должны быть включены во все копии или значимые части данного Программного Обеспечения. 20 | 21 | ДАННОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ «КАК ЕСТЬ», БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ, ЯВНО ВЫРАЖЕННЫХ ИЛИ ПОДРАЗУМЕВАЕМЫХ, ВКЛЮЧАЯ, НО НЕ ОГРАНИЧИВАЯСЬ ГАРАНТИЯМИ ТОВАРНОЙ ПРИГОДНОСТИ, СООТВЕТСТВИЯ ПО ЕГО КОНКРЕТНОМУ НАЗНАЧЕНИЮ И ОТСУТСТВИЯ НАРУШЕНИЙ ПРАВ. НИ В КАКОМ СЛУЧАЕ АВТОРЫ ИЛИ ПРАВООБЛАДАТЕЛИ НЕ НЕСУТ ОТВЕТСТВЕННОСТИ ПО ИСКАМ О ВОЗМЕЩЕНИИ УЩЕРБА, УБЫТКОВ ИЛИ ДРУГИХ ТРЕБОВАНИЙ ПО ДЕЙСТВУЮЩИМ КОНТРАКТАМ, ДЕЛИКТАМ ИЛИ ИНОМУ, ВОЗНИКШИМ ИЗ, ИМЕЮЩИМ ПРИЧИНОЙ ИЛИ СВЯЗАННЫМ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ ИЛИ ИСПОЛЬЗОВАНИЕМ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ИЛИ ИНЫМИ ДЕЙСТВИЯМИ С ПРОГРАММНЫМ ОБЕСПЕЧЕНИЕМ. -------------------------------------------------------------------------------- /Readme.md: -------------------------------------------------------------------------------- 1 | # Sublime Text presentation 2 | 3 | http://aalexeev239.github.io/sublime-presentation/ -------------------------------------------------------------------------------- /apple-touch-icon-114x114.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/apple-touch-icon-114x114.png -------------------------------------------------------------------------------- /apple-touch-icon-120x120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/apple-touch-icon-120x120.png -------------------------------------------------------------------------------- /apple-touch-icon-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/apple-touch-icon-144x144.png -------------------------------------------------------------------------------- /apple-touch-icon-152x152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/apple-touch-icon-152x152.png -------------------------------------------------------------------------------- /apple-touch-icon-180x180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/apple-touch-icon-180x180.png -------------------------------------------------------------------------------- /apple-touch-icon-57x57.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/apple-touch-icon-57x57.png -------------------------------------------------------------------------------- /apple-touch-icon-60x60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/apple-touch-icon-60x60.png -------------------------------------------------------------------------------- /apple-touch-icon-72x72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/apple-touch-icon-72x72.png -------------------------------------------------------------------------------- /apple-touch-icon-76x76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/apple-touch-icon-76x76.png -------------------------------------------------------------------------------- /apple-touch-icon-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/apple-touch-icon-precomposed.png -------------------------------------------------------------------------------- /apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/apple-touch-icon.png -------------------------------------------------------------------------------- /bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "shower", 3 | "version": "1.0.15", 4 | "license": "MIT", 5 | "main": "index.html", 6 | "ignore": [ 7 | "*", 8 | "!pictures/**", 9 | "!index.html", 10 | "!License.md", 11 | "!Readme.md", 12 | "!bower.json" 13 | ], 14 | "keywords": [ 15 | "shower", 16 | "presentation", 17 | "template" 18 | ], 19 | "dependencies": { 20 | "shower-bright": "~1.0.11", 21 | "shower-core": "~1.0.7", 22 | "shower-ribbon": "~1.0.11" 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /browserconfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | #e0e0e0 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /css/style.css: -------------------------------------------------------------------------------- 1 | /*================================= 2 | = VARIABLES = 3 | =================================*/ 4 | /*----- End of VARIABLES ------*/ 5 | /*=============================== 6 | = OVERLAY = 7 | ===============================*/ 8 | .full .progress div { 9 | border-bottom-color: #ff8100; 10 | } 11 | /*----- End of OVERLAY ------*/ 12 | /*============================ 13 | = BASE = 14 | ============================*/ 15 | .slide { 16 | color: #333; 17 | } 18 | .slide > div { 19 | padding-top: 90px; 20 | height: 544px; 21 | } 22 | .slide.custom { 23 | text-align: center; 24 | } 25 | .slide.custom > div { 26 | padding: 50px 100px 0; 27 | } 28 | .slide.custom h2 { 29 | font-size: 40px; 30 | margin: 0 0 20px; 31 | } 32 | .slide.custom p { 33 | font-size: 24px; 34 | margin-bottom: 20px; 35 | } 36 | .slide.cover { 37 | text-align: center; 38 | } 39 | .slide a { 40 | color: #ff8100; 41 | } 42 | .slide a.header-link { 43 | color: inherit; 44 | display: inline-block; 45 | padding-right: 38px; 46 | padding-bottom: 2px; 47 | background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0ZWQgYnkgSWNvTW9vbi5pbyAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4KPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgdmlld0JveD0iMCAwIDMyIDMyIj4KPHBhdGggZD0iTTI5Ljc5NCAyLjMzM2wtMC4xMjYtMC4xMjZjLTIuOTQyLTIuOTQyLTcuNzU2LTIuOTQyLTEwLjY5OCAwbC02LjgxNiA2LjgxN2MtMi45NDIgMi45NDItMi45NDIgNy43NTYgMCAxMC42OTdsMC4xMjYgMC4xMjZjMC4yNDUgMC4yNDUgMC41MDUgMC40NjYgMC43NzMgMC42NzFsMi40OTUtMi40OTVjLTAuMjkxLTAuMTcyLTAuNTY2LTAuMzc3LTAuODE2LTAuNjI3bC0wLjEyNi0wLjEyNmMtMS41OTctMS41OTctMS41OTctNC4xOTYgMC01Ljc5M2w2LjgxNi02LjgxNmMxLjU5Ny0xLjU5NyA0LjE5Ni0xLjU5NyA1Ljc5MyAwbDAuMTI2IDAuMTI2YzEuNTk3IDEuNTk3IDEuNTk3IDQuMTk3IDAgNS43OTNsLTMuMDg0IDMuMDg0YzAuNTM1IDEuMzIyIDAuNzg5IDIuNzMxIDAuNzY3IDQuMTM3bDQuNzY5LTQuNzY5YzIuOTQyLTIuOTQyIDIuOTQyLTcuNzU2LTAtMTAuNjk3ek0xOS43MiAxMi4xNTRjLTAuMjQ1LTAuMjQ1LTAuNTA1LTAuNDY2LTAuNzczLTAuNjdsLTIuNDk1IDIuNDk1YzAuMjkxIDAuMTcyIDAuNTY2IDAuMzc3IDAuODE2IDAuNjI3bDAuMTI2IDAuMTI2YzEuNTk3IDEuNTk3IDEuNTk3IDQuMTk2IDAgNS43OTNsLTYuODE3IDYuODE3Yy0xLjU5NyAxLjU5Ny00LjE5NiAxLjU5Ny01Ljc5MyAwbC0wLjEyNi0wLjEyNmMtMS41OTctMS41OTgtMS41OTctNC4xOTYgMC01Ljc5M2wzLjA4NC0zLjA4NGMtMC41MzUtMS4zMjItMC43ODktMi43MzEtMC43NjctNC4xMzdsLTQuNzY5IDQuNzY5Yy0yLjk0MiAyLjk0Mi0yLjk0MiA3Ljc1NiAwIDEwLjY5OGwwLjEyNiAwLjEyNmMyLjk0MiAyLjk0MiA3Ljc1NiAyLjk0MiAxMC42OTggMGw2LjgxNi02LjgxNmMyLjk0Mi0yLjk0MiAyLjk0Mi03Ljc1NiAwLTEwLjY5OGwtMC4xMjYtMC4xMjZ6IiBmaWxsPSIjNjY2NjY2Ij48L3BhdGg+Cjwvc3ZnPgo=") right center no-repeat; 48 | background-size: 32px 32px; 49 | border-bottom: 3px solid transparent; 50 | } 51 | .slide a.header-link:hover { 52 | text-decoration: none; 53 | border-bottom-color: #666; 54 | } 55 | .slide a.transparent-color { 56 | color: inherit; 57 | background-image: none; 58 | } 59 | .slide p { 60 | line-height: 1.4; 61 | } 62 | .slide pre code { 63 | line-height: 1.4; 64 | font-size: 18px; 65 | white-space: normal; 66 | } 67 | .slide .slide-content { 68 | display: block; 69 | min-height: 110px; 70 | margin: 0 0 15px; 71 | } 72 | .slide .slide-content p { 73 | margin: 0; 74 | } 75 | .slide .content-img { 76 | display: block; 77 | margin: 0 auto; 78 | max-width: 800px; 79 | height: auto; 80 | } 81 | .slide:after { 82 | color: #ff8100; 83 | padding-top: 12px; 84 | } 85 | .subl-orange { 86 | color: #ff8100; 87 | } 88 | .logo { 89 | display: block; 90 | text-align: center; 91 | text-decoration: underline; 92 | background-image: none; 93 | font-size: 44px; 94 | text-transform: uppercase; 95 | font-weight: 700; 96 | } 97 | .logo .content-img { 98 | margin-bottom: 25px; 99 | } 100 | .text-center { 101 | text-align: center; 102 | } 103 | .cover-h2 { 104 | display: inline-block; 105 | margin: 0; 106 | padding: 20px 30px; 107 | text-align: center; 108 | font-size: 50px; 109 | color: #ff8100 !important; 110 | background-color: rgba(38,38,38,0.8); 111 | text-transform: uppercase; 112 | font-weight: 400; 113 | } 114 | .outer-link { 115 | display: inline-block; 116 | padding-right: 24px; 117 | white-space: nowrap; 118 | position: relative; 119 | } 120 | .outer-link:before { 121 | content: ''; 122 | position: absolute; 123 | top: 7px; 124 | right: 0; 125 | width: 20px; 126 | height: 20px; 127 | background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0ZWQgYnkgSWNvTW9vbi5pbyAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4KPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgdmlld0JveD0iMCAwIDMyIDMyIj4KPHBhdGggZD0iTTI5Ljc5NCAyLjMzM2wtMC4xMjYtMC4xMjZjLTIuOTQyLTIuOTQyLTcuNzU2LTIuOTQyLTEwLjY5OCAwbC02LjgxNiA2LjgxN2MtMi45NDIgMi45NDItMi45NDIgNy43NTYgMCAxMC42OTdsMC4xMjYgMC4xMjZjMC4yNDUgMC4yNDUgMC41MDUgMC40NjYgMC43NzMgMC42NzFsMi40OTUtMi40OTVjLTAuMjkxLTAuMTcyLTAuNTY2LTAuMzc3LTAuODE2LTAuNjI3bC0wLjEyNi0wLjEyNmMtMS41OTctMS41OTctMS41OTctNC4xOTYgMC01Ljc5M2w2LjgxNi02LjgxNmMxLjU5Ny0xLjU5NyA0LjE5Ni0xLjU5NyA1Ljc5MyAwbDAuMTI2IDAuMTI2YzEuNTk3IDEuNTk3IDEuNTk3IDQuMTk3IDAgNS43OTNsLTMuMDg0IDMuMDg0YzAuNTM1IDEuMzIyIDAuNzg5IDIuNzMxIDAuNzY3IDQuMTM3bDQuNzY5LTQuNzY5YzIuOTQyLTIuOTQyIDIuOTQyLTcuNzU2LTAtMTAuNjk3ek0xOS43MiAxMi4xNTRjLTAuMjQ1LTAuMjQ1LTAuNTA1LTAuNDY2LTAuNzczLTAuNjdsLTIuNDk1IDIuNDk1YzAuMjkxIDAuMTcyIDAuNTY2IDAuMzc3IDAuODE2IDAuNjI3bDAuMTI2IDAuMTI2YzEuNTk3IDEuNTk3IDEuNTk3IDQuMTk2IDAgNS43OTNsLTYuODE3IDYuODE3Yy0xLjU5NyAxLjU5Ny00LjE5NiAxLjU5Ny01Ljc5MyAwbC0wLjEyNi0wLjEyNmMtMS41OTctMS41OTgtMS41OTctNC4xOTYgMC01Ljc5M2wzLjA4NC0zLjA4NGMtMC41MzUtMS4zMjItMC43ODktMi43MzEtMC43NjctNC4xMzdsLTQuNzY5IDQuNzY5Yy0yLjk0MiAyLjk0Mi0yLjk0MiA3Ljc1NiAwIDEwLjY5OGwwLjEyNiAwLjEyNmMyLjk0MiAyLjk0MiA3Ljc1NiAyLjk0MiAxMC42OTggMGw2LjgxNi02LjgxNmMyLjk0Mi0yLjk0MiAyLjk0Mi03Ljc1NiAwLTEwLjY5OGwtMC4xMjYtMC4xMjZ6IiBmaWxsPSIjZmY4MTAwIj48L3BhdGg+Cjwvc3ZnPgo="); 128 | background-repeat: no-repeat; 129 | background-size: 20px 20px; 130 | } 131 | .img-wrap { 132 | display: block; 133 | margin: 0 auto; 134 | background-image: none; 135 | } 136 | .img-center { 137 | display: block; 138 | max-width: 576px; 139 | margin: 0 auto; 140 | } 141 | /*----- End of BASE ------*/ 142 | #Cover div { 143 | padding-top: 25px; 144 | } 145 | #Cover h2 { 146 | margin: 0 0 0; 147 | color: #fff; 148 | text-align: center; 149 | font-size: 50px; 150 | text-transform: uppercase; 151 | font-weight: 400; 152 | } 153 | #Cover p { 154 | margin: 5px 0 0; 155 | text-align: center; 156 | color: #fff; 157 | font-style: italic; 158 | font-size: 20px; 159 | } 160 | #Cover p a { 161 | color: #fff; 162 | } 163 | #main-features { 164 | text-align: center; 165 | } 166 | #plugins h2 { 167 | margin: 400px auto 0; 168 | } 169 | #emmet-livestyle iframe { 170 | margin: 0 auto; 171 | } 172 | #magic h2 { 173 | position: relative; 174 | bottom: 40px; 175 | } 176 | #subl-features em { 177 | display: block; 178 | margin: 20px 0 0; 179 | } 180 | #settings code { 181 | color: #999; 182 | } 183 | #settings code strong { 184 | color: #000; 185 | } 186 | -------------------------------------------------------------------------------- /css/style.min.css: -------------------------------------------------------------------------------- 1 | .full .progress div{border-bottom-color:#ff8100}.slide{color:#333}.slide>div{padding-top:90px;height:544px}.slide.custom{text-align:center}.slide.custom>div{padding:50px 100px 0}.slide.custom h2{font-size:40px;margin:0 0 20px}.slide.custom p{font-size:24px;margin-bottom:20px}.slide.cover{text-align:center}.slide a{color:#ff8100}.slide a.header-link{color:inherit;display:inline-block;padding-right:38px;padding-bottom:2px;background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0ZWQgYnkgSWNvTW9vbi5pbyAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4KPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgdmlld0JveD0iMCAwIDMyIDMyIj4KPHBhdGggZD0iTTI5Ljc5NCAyLjMzM2wtMC4xMjYtMC4xMjZjLTIuOTQyLTIuOTQyLTcuNzU2LTIuOTQyLTEwLjY5OCAwbC02LjgxNiA2LjgxN2MtMi45NDIgMi45NDItMi45NDIgNy43NTYgMCAxMC42OTdsMC4xMjYgMC4xMjZjMC4yNDUgMC4yNDUgMC41MDUgMC40NjYgMC43NzMgMC42NzFsMi40OTUtMi40OTVjLTAuMjkxLTAuMTcyLTAuNTY2LTAuMzc3LTAuODE2LTAuNjI3bC0wLjEyNi0wLjEyNmMtMS41OTctMS41OTctMS41OTctNC4xOTYgMC01Ljc5M2w2LjgxNi02LjgxNmMxLjU5Ny0xLjU5NyA0LjE5Ni0xLjU5NyA1Ljc5MyAwbDAuMTI2IDAuMTI2YzEuNTk3IDEuNTk3IDEuNTk3IDQuMTk3IDAgNS43OTNsLTMuMDg0IDMuMDg0YzAuNTM1IDEuMzIyIDAuNzg5IDIuNzMxIDAuNzY3IDQuMTM3bDQuNzY5LTQuNzY5YzIuOTQyLTIuOTQyIDIuOTQyLTcuNzU2LTAtMTAuNjk3ek0xOS43MiAxMi4xNTRjLTAuMjQ1LTAuMjQ1LTAuNTA1LTAuNDY2LTAuNzczLTAuNjdsLTIuNDk1IDIuNDk1YzAuMjkxIDAuMTcyIDAuNTY2IDAuMzc3IDAuODE2IDAuNjI3bDAuMTI2IDAuMTI2YzEuNTk3IDEuNTk3IDEuNTk3IDQuMTk2IDAgNS43OTNsLTYuODE3IDYuODE3Yy0xLjU5NyAxLjU5Ny00LjE5NiAxLjU5Ny01Ljc5MyAwbC0wLjEyNi0wLjEyNmMtMS41OTctMS41OTgtMS41OTctNC4xOTYgMC01Ljc5M2wzLjA4NC0zLjA4NGMtMC41MzUtMS4zMjItMC43ODktMi43MzEtMC43NjctNC4xMzdsLTQuNzY5IDQuNzY5Yy0yLjk0MiAyLjk0Mi0yLjk0MiA3Ljc1NiAwIDEwLjY5OGwwLjEyNiAwLjEyNmMyLjk0MiAyLjk0MiA3Ljc1NiAyLjk0MiAxMC42OTggMGw2LjgxNi02LjgxNmMyLjk0Mi0yLjk0MiAyLjk0Mi03Ljc1NiAwLTEwLjY5OGwtMC4xMjYtMC4xMjZ6IiBmaWxsPSIjNjY2NjY2Ij48L3BhdGg+Cjwvc3ZnPgo=) right center/32px 32px no-repeat;border-bottom:3px solid transparent}.slide a.header-link:hover{text-decoration:none;border-bottom-color:#666}.slide a.transparent-color{color:inherit;background-image:none}.slide p{line-height:1.4}.slide pre code{line-height:1.4;font-size:18px;white-space:normal}.slide .slide-content{display:block;min-height:110px;margin:0 0 15px}.slide .slide-content p{margin:0}.slide .content-img{display:block;margin:0 auto;max-width:800px;height:auto}.slide:after{color:#ff8100;padding-top:12px}.subl-orange{color:#ff8100}.logo{display:block;text-align:center;text-decoration:underline;background-image:none;font-size:44px;text-transform:uppercase;font-weight:700}.logo .content-img{margin-bottom:25px}.text-center{text-align:center}.cover-h2{display:inline-block;margin:0;padding:20px 30px;text-align:center;font-size:50px;color:#ff8100!important;background-color:rgba(38,38,38,.8);text-transform:uppercase;font-weight:400}.outer-link{display:inline-block;padding-right:24px;white-space:nowrap;position:relative}.outer-link:before{content:'';position:absolute;top:7px;right:0;width:20px;height:20px;background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0ZWQgYnkgSWNvTW9vbi5pbyAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4KPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgdmlld0JveD0iMCAwIDMyIDMyIj4KPHBhdGggZD0iTTI5Ljc5NCAyLjMzM2wtMC4xMjYtMC4xMjZjLTIuOTQyLTIuOTQyLTcuNzU2LTIuOTQyLTEwLjY5OCAwbC02LjgxNiA2LjgxN2MtMi45NDIgMi45NDItMi45NDIgNy43NTYgMCAxMC42OTdsMC4xMjYgMC4xMjZjMC4yNDUgMC4yNDUgMC41MDUgMC40NjYgMC43NzMgMC42NzFsMi40OTUtMi40OTVjLTAuMjkxLTAuMTcyLTAuNTY2LTAuMzc3LTAuODE2LTAuNjI3bC0wLjEyNi0wLjEyNmMtMS41OTctMS41OTctMS41OTctNC4xOTYgMC01Ljc5M2w2LjgxNi02LjgxNmMxLjU5Ny0xLjU5NyA0LjE5Ni0xLjU5NyA1Ljc5MyAwbDAuMTI2IDAuMTI2YzEuNTk3IDEuNTk3IDEuNTk3IDQuMTk3IDAgNS43OTNsLTMuMDg0IDMuMDg0YzAuNTM1IDEuMzIyIDAuNzg5IDIuNzMxIDAuNzY3IDQuMTM3bDQuNzY5LTQuNzY5YzIuOTQyLTIuOTQyIDIuOTQyLTcuNzU2LTAtMTAuNjk3ek0xOS43MiAxMi4xNTRjLTAuMjQ1LTAuMjQ1LTAuNTA1LTAuNDY2LTAuNzczLTAuNjdsLTIuNDk1IDIuNDk1YzAuMjkxIDAuMTcyIDAuNTY2IDAuMzc3IDAuODE2IDAuNjI3bDAuMTI2IDAuMTI2YzEuNTk3IDEuNTk3IDEuNTk3IDQuMTk2IDAgNS43OTNsLTYuODE3IDYuODE3Yy0xLjU5NyAxLjU5Ny00LjE5NiAxLjU5Ny01Ljc5MyAwbC0wLjEyNi0wLjEyNmMtMS41OTctMS41OTgtMS41OTctNC4xOTYgMC01Ljc5M2wzLjA4NC0zLjA4NGMtMC41MzUtMS4zMjItMC43ODktMi43MzEtMC43NjctNC4xMzdsLTQuNzY5IDQuNzY5Yy0yLjk0MiAyLjk0Mi0yLjk0MiA3Ljc1NiAwIDEwLjY5OGwwLjEyNiAwLjEyNmMyLjk0MiAyLjk0MiA3Ljc1NiAyLjk0MiAxMC42OTggMGw2LjgxNi02LjgxNmMyLjk0Mi0yLjk0MiAyLjk0Mi03Ljc1NiAwLTEwLjY5OGwtMC4xMjYtMC4xMjZ6IiBmaWxsPSIjZmY4MTAwIj48L3BhdGg+Cjwvc3ZnPgo=);background-repeat:no-repeat;background-size:20px 20px}.img-wrap{display:block;margin:0 auto;background-image:none}.img-center{display:block;max-width:576px;margin:0 auto}#Cover div{padding-top:25px}#Cover h2{margin:0;color:#fff;text-align:center;font-size:50px;text-transform:uppercase;font-weight:400}#Cover p{margin:5px 0 0;text-align:center;color:#fff;font-style:italic;font-size:20px}#Cover p a{color:#fff}#main-features{text-align:center}#plugins h2{margin:400px auto 0}#emmet-livestyle iframe{margin:0 auto}#magic h2{position:relative;bottom:40px}#subl-features em{display:block;margin:20px 0 0}#settings code{color:#999}#settings code strong{color:#000} -------------------------------------------------------------------------------- /favicon-160x160.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/favicon-160x160.png -------------------------------------------------------------------------------- /favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/favicon-16x16.png -------------------------------------------------------------------------------- /favicon-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/favicon-192x192.png -------------------------------------------------------------------------------- /favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/favicon-32x32.png -------------------------------------------------------------------------------- /favicon-96x96.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/favicon-96x96.png -------------------------------------------------------------------------------- /favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/favicon.ico -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Sublime Text для верстальщиков 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 |

Готовь Sublime к полету в космос

42 |

43 | Полезные инструменты и настройки Sublime Text 3 для верстальщиков 44 |

45 |
46 |
47 |
48 |

49 | Готовь 50 | Sublime 51 | к полету в космос 52 |

53 |

54 | сделано с занудством 55 | Андреем Алексеевым 56 |

57 |
58 |
59 |
60 |
61 | 62 |

63 | Текстовый редактор с широким диапазоном настроек, тем и плагинов, позволяющий увеличить скорость веб-разработки в разы. 64 |

65 |
66 |
67 |
68 |
69 |

В этой презентации

70 |
    71 |
  1. Обзор основных возможностей ST
  2. 72 |
  3. Интересные плагины для верстальщиков
  4. 73 |
  5. Настройки, сокращения и сниппеты
  6. 74 |
  7. Дополнительные статьи и плагины
  8. 75 |
76 |
77 |
78 |
79 |
80 |

Основные возможности

81 | 82 |
83 |
84 |
85 |
86 |

Сайдбар и дробление на секции

87 |
88 |

В боковой панели хранятся открытые файлы и папки.
Каждый файл открывается в новом табе, которые можно
распределить в несколько рядов или колонок.

89 |
90 | 91 |
92 |
93 |
94 |
95 |

Миникарта кода

96 |
97 |

Показывает весь код в панельке справа. Кстати, можно вставлять ASCII графику в комментарии,
чтобы видеть эти области на миникарте.

98 |
99 | 100 |
101 |
102 |
103 |
104 |

Темы оформления

105 |
106 |

Очень, очень, очень много тем.
Выбор за вами!

107 |
108 | 109 |
110 |
111 |
112 |
113 |

Множественные курсоры

114 |
115 |

ST позволяет редактировать код одновременно в нескольких местах. Создать курсоры можно как из выделенной области, так и по выбору одинаковых фрагментов кода.

116 |
117 | 118 |
119 |
120 |
121 |
122 |

Поиск

123 |
124 |

Целая куча функций поиска: обычный поиск по файлу, поиск с заменой (одного или всех значений), поиск по файлам и папкам, поиск с регулярными выражениями и многое другое.

125 |
126 | 127 |
128 |
129 |
130 |
131 |

Командные панели

132 |
133 |

Быстрый доступ ко всем функциям и файлам.
Не нужно держать в голове клавиатурное сокращение функции или адрес файла, просто откройте панель и начните вводить название.

134 |
135 | 136 |
137 |
138 |
139 |
140 |

Нечёткий поиск

141 |
142 |

Вы вводите лишь комбинацию символов –
нечеткий поиск выдаcт все возможные совпадения. Супер!
P.S. Смотрите, как полезен символ @ для CSS.

143 |
144 | 145 |
146 |
147 |
148 |
149 |

Сниппеты и клавиатурные сокращения

150 |
151 |

Cниппеты, плагины и шорткаты в разы ускоряют разработку. И всё это добро можно настроить под себя.
Вот так я верстаю менюшки:

152 |
153 | 154 |
155 |
156 |
157 |
158 |

Package Control

159 |
160 |

С Package Control установка плагинов займет примерно минуту. Вызовите командную панель, выберите Install Package, в загрузившемся списке плагинов найдите нужный и... готово!

161 |
162 | 163 |
164 |
165 |
166 |
167 |

Плагины

168 | 169 |
170 |
171 |
172 |
173 |

Emmet

174 |
175 |

Необходимая вещь для верстальщика. Emmet дает возможность писать HTML и CSS сокращениями, используя нечеткий поиск на полную катушку, а также добавляет полезные шорткаты.

176 |
177 | Emmet 178 |
179 |
180 |
181 |
182 |

SideBarEnhancements

183 |
184 |

Перемещайте, копируйте, переименовывайте файлы и папки прямо из ST. На любимые функции, как обычно, можно установить шорткат. Кроме того, есть полезности вроде Data URI.

185 |
186 | SideBarEnhancements 187 |
188 |
189 |
190 |
191 |

AdvancedNewFile

192 |
193 |

Быстрое создание нового файла.

194 |
195 | AdvancedNewFile 196 |
197 |
198 |
199 |
200 |

Bracket​Highlighter

201 |
202 |

Удобная подсветка открывающих и закрывающих скобок.

203 |
204 | Bracket​Highlighter 205 |
206 |
207 |
208 |
209 |

ZenTabs

210 |
211 |

Этот плагин умеет подсвечивать текущую вкладку и ограничивать количество открытых вкладок заданным числом. При открытии новых вкладок закрываются самые старые.

212 |
213 | ZenTabs 214 |
215 |
216 |
217 |
218 |

SublimeLinter

219 |
220 |

Линтер читает код и подсвечивает ошибки и предупреждения, при наведении на которые объясняет ошибку в нижней строчке. Для каждого языка необходимо установить свой линтер.

221 |
222 | Sublime Linter 223 |
224 |
225 |
226 |
227 |

Gutter Color

228 |
229 |

Ну вы сами все видите.
P.S. есть еще очень похожий Color Highlighter

230 |
231 | Gutter Color 232 |
233 |
234 |
235 |
236 |

Plain Tasks

237 |
238 |

Планировщик для ST. Удобно вести список задач в одной папке с проектом. Можно отмечать выполненные задания, при этом автоматически фиксируется время окончания.

239 |
240 | Plain Tasks 241 |
242 |
243 |
244 |
245 |

Live Reload

246 |
247 |

В любом обзоре обязательно должны рассказать про live-режим – автообновление браузера без нажатия клавиш.
Это настраивается и для ST, однако я бы советовал не привязываться к редактору, а установить приложение отдельно

248 |
249 | Live Reload 250 |
251 |
252 |
253 |
254 |

Emmet Livestyle

255 |
256 |

Любопытная вариация LiveReload, если вы пишите код на CSS: Livestyle позволяет править стили прямо в инспекторе браузера, изменения сразу записываются в CSS файл.

257 |
258 | 259 |
260 |
261 |
262 |
263 |

SFTP

264 |
265 |

2 режима работы с FTP: 1) подключение к удаленному серверу и работа на нем; 2) настройка FTP-соединения для каждого проекта, позволяющая быстро и просто синхронизировать файлы.

266 |
267 | SFTP 268 |
269 |
270 |
271 |
272 |

CSScomb

273 |
274 |

«Причесывает» CSS, расставляя свойства в заданном порядке. Потребует небольшой настройки: установки Node.js и конфигурации плагина в зависимости от своих предпочтений.

275 |
276 | CSScomb 277 |
278 |
279 |
280 |
281 |

GitGutter

282 |
283 |

Полезный инструмент для пользователей Git: вживую показывает изменения, произошедшие в файле с последнего коммита.

284 |
285 | GitGutter 286 |
287 |
288 |
289 |
290 |

Comment-Snippets

291 |
292 |

Лаконичный набор сниппетов для красивых комментариев.

293 |
294 | Comment-Snippets 295 |
296 |
297 |
298 |
299 |

AutoFileName

300 |
301 |

Простой и удобный плагин, позволяющий забыть о написании путей к тому или иному файлу.

302 |
303 | AutoFileName 304 |
305 |
306 |
307 |
308 |

Настройки, сокращения и сниппеты

309 | 310 |
311 |
312 |
313 |
314 |

Sublime Text – это гибкость и скорость:
для всех плагинов и функций есть настройки и клавиатурные сокращения. Часто пишете один и тот же код? Создайте сниппет и вызывайте код лишь несколькими символами. Работаете над несколькими проектами? Совсем не обязательно каждый раз открывать папку проекта и целый ворох необходимых файлов – воспользуйтесь системой проектов.Нужен дополнительный функционал?Откройте Package Control, скорее всего его уже кто-то написал :)

315 |
316 |
317 |
318 |
319 |

Настройки

320 |

В ST настройки есть как у самого редактора, так и у всех подключаемых плагинов. Найти их можно по пути
Preferences > Settings ...
или
Preferences > Package Settings > ...

321 |

Обратите внимание, что все настройки разбиты на категории User и Default.

322 |
323 |
324 |
325 |
326 |

Настройки

327 |
328 |

Все изменения мы вносим в Settings - User. Если вносить их в Default, они будут перезаписаны при ближайшем обновлении. В дефолтные настройки нужно заглядывать лишь для справки.

329 |
330 | Settings 331 |
332 |
333 |
334 |
335 |

Настройки

336 |

Мои любимые настройки для ST. Полный список тут

337 |
338 | 				"bold_folder_labels": true, // подсвечивать надписи папок в сайдбаре
339 | 				"draw_white_space": "all", // подсвечивать пробелы и табы в коде
340 | 				"highlight_modified_tabs": true, // подсвечивать табы, в которые внесены изменения
341 | 				"save_on_focus_lost": true, // забудьте о комбинации Cmd+S/Ctrl+S. Код сохраняется всякий раз при переключении окна или смене таба
342 | 				"show_line_endings": true, // показывать переносы строк
343 | 				"tab_size": 2, // размер таба равен двум символам
344 | 				"translate_tabs_to_spaces": true, // табы - не табы, а пробелы
345 | 				"trim_trailing_white_space_on_save": true // "подчищать" код при сохранении, обрубая лишние табы и пробелы
346 | 			
347 |
348 |
349 |
350 |
351 |

Клавиатурные шорткаты

352 |

Шорткаты – это одна из мощнейших функций ST – практически любое действие можно повесить на комбинацию клавиш. Рассортированы они по папкам аналогично тому, как рассортированы настройки Preferences > Key Bindings.

353 |
354 |
355 |
356 |
357 |

Клавиатурные шорткаты

358 |

Чтобы ввести сокращение, в Key Bindings – User следует добавить новую строку, например:

359 |
{ "keys": ["ctrl+shift+o"], "command": "side_bar_open_in_browser" },
360 |

command – это команда, которую ST выполняет при нажатии.
Список команд плагинов не всегда лежит в разделе Preferences.
Если возникают трудности, посмотрите репозиторий плагина на github, искомые команды прячутся в файлах с расширением .sublime-keymap или .sublime-commands.

361 |
362 |
363 |
364 |
365 |

Сниппеты

366 |

Небольшие куски кода, которые можно вставлять по определенному сочетанию клавиш. Так, в этом примере фраза nav++ по нажатию на Tab превратится в emmet-цепочку для разметки навигации.
Создать свой сниппет невероятно просто

367 | 368 |
369 |
370 |
371 |
372 |

Проекты

373 |
374 |

Не надо вспоминать, как называется папка вашего проекта, и над чем вы работали в прошлый раз - это дело ST. Создавайте и переключайтесь между проектами, храните специфичные настройки в отдельном файле.

375 |
376 | AutoFileName 377 |
378 |
379 |
380 |
381 |

Дополнительные материалы

382 | 383 |
384 |
385 | 386 |
387 |
388 |

Статьи

389 |

Perfect Workflow in Sublime Text 2
Превосходный двухчасовой скринкаст, до сих пор не потерявший актуальность. Бесплатный после регистрации.

390 |

Sublime Text Unofficial Documentation
Тот неловкий момент, когда неофициальная документация лучше официальной.

391 |

Getting Started With Sublime Text 3: 25 Tips, Tricks, And Shortcuts
Лучшая из статей по ST, что я когда-либо видел.

392 |
393 |
394 | 395 |
396 |
397 |

Статьи

398 |

Русская документация Sublime Text
Удобные справки по горячим клавишам и настройкам редактора, а также лаконичное описание главных функций.

399 |

Sublime Text 3 для работы с фронтэндом

400 |

Лучшие плагины для Sublime Text

401 |

Комментарий к прошлой статье
Про синхронизацию ST между устройствами.

402 |
403 |
404 | 405 |
406 |
407 |

Плагины, которые стоит поглядеть

408 |

Sublime Alignment – выравнивание нескольких строчек по определенной позиции.

409 |

SublimeFileDiffs – сравнивает два файла или их части и показывает различия.

410 |

HTML-CSS-JS Prettify – форматирует ваш код.

411 |

SublimeAllAutocomplete – автокомплит работает не только в рамках одного документа, но в рамках текущих открытых файлов.

412 |
413 |
414 |
415 |
416 |

Плагины, которые стоит поглядеть

417 |

Clipboard History – поможет вспомнить, что именно вы вставляли несколько итераций назад.

418 |

BufferScroll – запоминает позицию курсора при переключении окон.

419 |
420 |
421 |
422 |
423 |

На этом все!

424 |

Занудствовал для вас Андрей Алексеев.
Пожелания, предложения: vk / e-mail

425 |

426 | Оцените на гитхаб: 427 |
428 | Star 429 |

430 | 431 |

Поделиться ссылкой: 432 | http://aalexeev239.github.io/sublime-presentation/

433 |
434 |
435 | 436 | 440 |
441 |
442 |
443 | 444 | 445 | 446 | 447 | -------------------------------------------------------------------------------- /mstile-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/mstile-144x144.png -------------------------------------------------------------------------------- /mstile-150x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/mstile-150x150.png -------------------------------------------------------------------------------- /mstile-310x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/mstile-310x150.png -------------------------------------------------------------------------------- /mstile-310x310.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/mstile-310x310.png -------------------------------------------------------------------------------- /mstile-70x70.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/mstile-70x70.png -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "subl", 3 | "description": "Sublime Text presentation", 4 | "version": "1.0.0", 5 | "author": { 6 | "name": "Alexeev Andrey", 7 | "url": "http://aalexeev.ru/" 8 | }, 9 | "dependencies": { 10 | "shower-bright": "^1.0.11", 11 | "shower-core": "^1.0.7", 12 | "shower-ribbon": "^1.0.11" 13 | }, 14 | "devDependencies": { 15 | "grunt": "^0.4.5", 16 | "grunt-bump": "0.0.15", 17 | "grunt-contrib-clean": "^0.6.0", 18 | "grunt-contrib-compress": "^0.11.0", 19 | "grunt-contrib-copy": "^0.5.0", 20 | "grunt-contrib-cssmin": "^0.10.0", 21 | "grunt-contrib-imagemin": "^0.9.2", 22 | "grunt-contrib-stylus": "^0.20.0", 23 | "grunt-contrib-watch": "^0.6.1", 24 | "grunt-gh-pages": "^0.9.1", 25 | "grunt-notify": "^0.4.1", 26 | "grunt-text-replace": "^0.3.12", 27 | "load-grunt-tasks": "^0.6.0" 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /pictures/LiveReload_350.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/LiveReload_350.png -------------------------------------------------------------------------------- /pictures/anf.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/anf.gif -------------------------------------------------------------------------------- /pictures/autofilename.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/autofilename.gif -------------------------------------------------------------------------------- /pictures/brackethighlighter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/brackethighlighter.png -------------------------------------------------------------------------------- /pictures/codemap.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/codemap.gif -------------------------------------------------------------------------------- /pictures/comand-panels.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/comand-panels.gif -------------------------------------------------------------------------------- /pictures/comments.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/comments.png -------------------------------------------------------------------------------- /pictures/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/cover.jpg -------------------------------------------------------------------------------- /pictures/cover_else.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/cover_else.jpg -------------------------------------------------------------------------------- /pictures/cover_falcon.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/cover_falcon.jpg -------------------------------------------------------------------------------- /pictures/cover_yoda.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/cover_yoda.jpg -------------------------------------------------------------------------------- /pictures/csscomb.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/csscomb.gif -------------------------------------------------------------------------------- /pictures/emmet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/emmet.png -------------------------------------------------------------------------------- /pictures/fuzzy-search.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/fuzzy-search.gif -------------------------------------------------------------------------------- /pictures/gitgutter.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/gitgutter.gif -------------------------------------------------------------------------------- /pictures/guttercolor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/guttercolor.png -------------------------------------------------------------------------------- /pictures/keybind.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/keybind.gif -------------------------------------------------------------------------------- /pictures/layout.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/layout.gif -------------------------------------------------------------------------------- /pictures/linter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/linter.png -------------------------------------------------------------------------------- /pictures/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/logo.png -------------------------------------------------------------------------------- /pictures/logo.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /pictures/multiple-cursors.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/multiple-cursors.gif -------------------------------------------------------------------------------- /pictures/package-control.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/package-control.gif -------------------------------------------------------------------------------- /pictures/picture.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/picture.jpg -------------------------------------------------------------------------------- /pictures/plain-tasks.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/plain-tasks.png -------------------------------------------------------------------------------- /pictures/plugins.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/plugins.jpg -------------------------------------------------------------------------------- /pictures/preferences.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/preferences.jpg -------------------------------------------------------------------------------- /pictures/preview.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/preview.jpg -------------------------------------------------------------------------------- /pictures/projects.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/projects.gif -------------------------------------------------------------------------------- /pictures/search.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/search.gif -------------------------------------------------------------------------------- /pictures/settings.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/settings.gif -------------------------------------------------------------------------------- /pictures/sftp.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/sftp.gif -------------------------------------------------------------------------------- /pictures/sftp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/sftp.png -------------------------------------------------------------------------------- /pictures/sidebarenh.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/sidebarenh.png -------------------------------------------------------------------------------- /pictures/snippets.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/snippets.gif -------------------------------------------------------------------------------- /pictures/snippets.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/snippets.jpg -------------------------------------------------------------------------------- /pictures/space.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/space.jpg -------------------------------------------------------------------------------- /pictures/st-logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/st-logo.jpg -------------------------------------------------------------------------------- /pictures/themes.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/themes.gif -------------------------------------------------------------------------------- /pictures/trailingspaces.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/trailingspaces.gif -------------------------------------------------------------------------------- /pictures/zentabs.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aalexeev239/sublime-presentation/a4e4391388c364e0a82f7974194a972706847162/pictures/zentabs.gif --------------------------------------------------------------------------------