|
64 | 64 | define(function (require, exports, module) { |
65 | 65 | "use strict"; |
66 | 66 |
|
67 | | - var CodeMirror = require("thirdparty/CodeMirror2/lib/codemirror"), |
| 67 | + var AnimationUtils = require("utils/AnimationUtils"), |
| 68 | + Async = require("utils/Async"), |
| 69 | + CodeMirror = require("thirdparty/CodeMirror2/lib/codemirror"), |
68 | 70 | Menus = require("command/Menus"), |
69 | 71 | PerfUtils = require("utils/PerfUtils"), |
70 | 72 | PreferencesManager = require("preferences/PreferencesManager"), |
71 | 73 | Strings = require("strings"), |
72 | 74 | TextRange = require("document/TextRange").TextRange, |
73 | 75 | TokenUtils = require("utils/TokenUtils"), |
74 | 76 | ViewUtils = require("utils/ViewUtils"), |
75 | | - Async = require("utils/Async"), |
76 | | - AnimationUtils = require("utils/AnimationUtils"), |
77 | 77 | _ = require("thirdparty/lodash"); |
78 | 78 |
|
79 | 79 | /** Editor preferences */ |
80 | | - var SMART_INDENT = "smartIndent", |
81 | | - USE_TAB_CHAR = "useTabChar", |
82 | | - TAB_SIZE = "tabSize", |
83 | | - SPACE_UNITS = "spaceUnits", |
84 | | - CLOSE_BRACKETS = "closeBrackets", |
| 80 | + var CLOSE_BRACKETS = "closeBrackets", |
| 81 | + CLOSE_TAGS = "closeTags", |
| 82 | + SCROLL_PAST_END = "scrollPastEnd", |
85 | 83 | SHOW_LINE_NUMBERS = "showLineNumbers", |
| 84 | + SMART_INDENT = "smartIndent", |
| 85 | + SOFT_TABS = "softTabs", |
| 86 | + SPACE_UNITS = "spaceUnits", |
86 | 87 | STYLE_ACTIVE_LINE = "styleActiveLine", |
| 88 | + TAB_SIZE = "tabSize", |
87 | 89 | WORD_WRAP = "wordWrap", |
88 | | - CLOSE_TAGS = "closeTags", |
89 | | - SCROLL_PAST_END = "scrollPastEnd", |
90 | | - cmOptions = {}; |
| 90 | + USE_TAB_CHAR = "useTabChar"; |
| 91 | + |
| 92 | + var cmOptions = {}; |
91 | 93 |
|
92 | 94 | // Mappings from Brackets preferences to CodeMirror options |
93 | | - cmOptions[SMART_INDENT] = "smartIndent"; |
94 | | - cmOptions[USE_TAB_CHAR] = "indentWithTabs"; |
95 | | - cmOptions[TAB_SIZE] = "indentUnit"; |
96 | | - cmOptions[SPACE_UNITS] = "indentUnit"; |
97 | 95 | cmOptions[CLOSE_BRACKETS] = "autoCloseBrackets"; |
| 96 | + cmOptions[CLOSE_TAGS] = "autoCloseTags"; |
| 97 | + cmOptions[SCROLL_PAST_END] = "scrollPastEnd"; |
98 | 98 | cmOptions[SHOW_LINE_NUMBERS] = "lineNumbers"; |
| 99 | + cmOptions[SMART_INDENT] = "smartIndent"; |
| 100 | + cmOptions[SPACE_UNITS] = "indentUnit"; |
99 | 101 | cmOptions[STYLE_ACTIVE_LINE] = "styleActiveLine"; |
| 102 | + cmOptions[TAB_SIZE] = "indentUnit"; |
| 103 | + cmOptions[USE_TAB_CHAR] = "indentWithTabs"; |
100 | 104 | cmOptions[WORD_WRAP] = "lineWrapping"; |
101 | | - cmOptions[CLOSE_TAGS] = "autoCloseTags"; |
102 | | - cmOptions[SCROLL_PAST_END] = "scrollPastEnd"; |
103 | 105 |
|
104 | | - PreferencesManager.definePreference(SMART_INDENT, "boolean", true); |
105 | | - PreferencesManager.definePreference(USE_TAB_CHAR, "boolean", false); |
106 | | - PreferencesManager.definePreference(TAB_SIZE, "number", 4); |
107 | | - PreferencesManager.definePreference(SPACE_UNITS, "number", 4); |
108 | | - PreferencesManager.definePreference(CLOSE_BRACKETS, "boolean", false); |
| 106 | + PreferencesManager.definePreference(CLOSE_BRACKETS, "boolean", false); |
| 107 | + PreferencesManager.definePreference(CLOSE_TAGS, "Object", { whenOpening: true, whenClosing: true, indentTags: [] }); |
| 108 | + PreferencesManager.definePreference(SCROLL_PAST_END, "boolean", false); |
109 | 109 | PreferencesManager.definePreference(SHOW_LINE_NUMBERS, "boolean", true); |
| 110 | + PreferencesManager.definePreference(SMART_INDENT, "boolean", true); |
| 111 | + PreferencesManager.definePreference(SOFT_TABS, "boolean", true); |
| 112 | + PreferencesManager.definePreference(SPACE_UNITS, "number", 4); |
110 | 113 | PreferencesManager.definePreference(STYLE_ACTIVE_LINE, "boolean", false); |
111 | | - PreferencesManager.definePreference(WORD_WRAP, "boolean", true); |
112 | | - PreferencesManager.definePreference(CLOSE_TAGS, "Object", { whenOpening: true, whenClosing: true, indentTags: [] }); |
113 | | - PreferencesManager.definePreference(SCROLL_PAST_END, "boolean", false); |
| 114 | + PreferencesManager.definePreference(TAB_SIZE, "number", 4); |
| 115 | + PreferencesManager.definePreference(USE_TAB_CHAR, "boolean", false); |
| 116 | + PreferencesManager.definePreference(WORD_WRAP, "boolean", true); |
114 | 117 |
|
115 | 118 | var editorOptions = Object.keys(cmOptions); |
116 | 119 |
|
@@ -516,7 +519,7 @@ define(function (require, exports, module) { |
516 | 519 | var instance = this._codeMirror, |
517 | 520 | overallJump = null; |
518 | 521 |
|
519 | | - if (!instance.getOption("indentWithTabs")) { |
| 522 | + if (!instance.getOption("indentWithTabs") && PreferencesManager.get(SOFT_TABS)) { |
520 | 523 | var indentUnit = instance.getOption("indentUnit"); |
521 | 524 |
|
522 | 525 | _.each(this.getSelections(), function (sel) { |
|
0 commit comments