sublime text3 for django development

29
Sublime Text3 for Django Development @starwilly

Upload: willy-liu

Post on 29-Jan-2018

929 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Sublime Text3 for Django Development

Sublime Text3

for Django Development @starwilly

Page 2: Sublime Text3 for Django Development

Integrated development environmentIDE

Text Editor

Page 3: Sublime Text3 for Django Development

Why Sublime Text

• Lightweight

• Speed

• Cross Platform (Windows, OS X, Linux)

• Package Control

• Community

Page 4: Sublime Text3 for Django Development

Let’s get started

Page 5: Sublime Text3 for Django Development

Keyboard Shortcuts

• Command Palettes: Cmd+ Shift + P / Ctrl + Shift + P

• Navigation

• Quick Open File: Cmd + P / Ctrl + P

• Go to Symbol: Cmd + R / Ctrl + R

• Go To Line: Ctrl + G

Page 6: Sublime Text3 for Django Development

Package

Page 7: Sublime Text3 for Django Development

Package Control Installation

https://packagecontrol.io/installation

1. Open Sublime Text Console: Ctrl+` 2. Paste the following code

Page 8: Sublime Text3 for Django Development

Install Package• Open Command Palettes (Cmd + Shift + P)

• Type “install” then Search Package Name

Page 9: Sublime Text3 for Django Development

SidebarEnhancements

https://github.com/titoBouzout/SideBarEnhancements

Page 10: Sublime Text3 for Django Development

AdvancedNewFile• Cmd + Shift + n / Ctrl + Alt + n

• Tab Autocompletion

Page 11: Sublime Text3 for Django Development

Anaconda

• Auto Completion • Code Linting (use sublimelinter) • Import Validation • Goto Definition • Tests Runner • McCabe Complexity Checker • …

Turns your Sublime Text 3 into a full featured Python development IDE

http://damnwidget.github.io/anaconda/

Page 12: Sublime Text3 for Django Development

Anaconda

Show Documentation

Page 13: Sublime Text3 for Django Development

Anaconda

Goto Definition

Page 14: Sublime Text3 for Django Development

Configure Anaconda

{ "python_interpreter": "$VIRTUAL_ENV/bin/python", }

{ "anaconda_linting": false, "python_interpreter": "/home/damnwidget/.virtualenvs/anaconda/bin/python" }

Virtualenv environment variables

Virtualenv support

http://damnwidget.github.io/anaconda/anaconda_settings/

Page 15: Sublime Text3 for Django Development

Djaneiro• Template:

• block => {% block %} {% endblock %}

• tag => {% %}

• var => {{ }}

• View

• view, createview, templateview …https://github.com/squ1b3r/Djaneiro

Page 16: Sublime Text3 for Django Development

Djaneiro• Model:

• Model

• mchar => models.CharField()

• fk => models.ForeignKey()

• Form:

• fchar => forms.CharField()

• fchoice => forms.ChoiceField()

Page 17: Sublime Text3 for Django Development

Linterhurt your feelings

but

help your code better

Page 18: Sublime Text3 for Django Development

SublimeLinter

• A Framework for ST3 Linters

• Linter must be installed separately

• SublimeLinter-pyflakes, SublimeLinter-pep8

• and more (jslint, csslint …)

Page 19: Sublime Text3 for Django Development

Installation

• Install SublimeLinter

• pip install pep8

• Install SublimeLinter-pep8 (by package control)

• Linter configuration

Page 20: Sublime Text3 for Django Development

Find Linter Executable

# Mac OS X, Linux hash -r which python

# Windows where python

Add to Path (Two Options) 1. Add the path to the “paths” global setting. 2. On Mac OS X or Linux, adjust your shell startup files

On Windows, add PATH environment variable.

Find Linter location

Page 21: Sublime Text3 for Django Development

Linter Config

Page 22: Sublime Text3 for Django Development

Linting

Page 23: Sublime Text3 for Django Development

Front End

Page 24: Sublime Text3 for Django Development

Bootstrap 3 Snippet• Use Command Palettes to find: Cmd + Shift + P

• bs3-input-group-btn

• bs3-form-forizontal

• …

Page 25: Sublime Text3 for Django Development

Emmet (Zen Coding)• HTML Abbreviation (CSS selector-like syntax)#page>div.logo+ul#navigation>li*5>a{Item $}

fl

bgc

http://docs.emmet.io/cheat-sheet/

w15+h20+mb15+mr20

• CSS code snippets

Page 26: Sublime Text3 for Django Development

bpython• a fancy interface to the Python interpreter

pip install bpython

Page 27: Sublime Text3 for Django Development

Thank you

Page 28: Sublime Text3 for Django Development

• SidebarEnhancement https://github.com/titoBouzout/SideBarEnhancements

• AdvancedNewFilehttps://github.com/skuroda/Sublime-AdvancedNewFile

• Anacondahttp://damnwidget.github.io/anaconda/

• Djaneirohttps://github.com/squ1b3r/Djaneiro

Page 29: Sublime Text3 for Django Development

• SublimeLinter

https://github.com/SublimeLinter/SublimeLinter3

Pyflakes https://github.com/SublimeLinter/SublimeLinter-pyflakes PEP8 https://github.com/SublimeLinter/SublimeLinter-pep8

• Bootstrap 3 Snippet https://github.com/JasonMortonNZ/bs3-sublime-plugin

• Emment http://emmet.io/

• bpythonhttp://bpython-interpreter.org/