From c3dc1cc3ebb62354fadc3045f9ecf1caa76aa010 Mon Sep 17 00:00:00 2001 From: Chris Wanstrath Date: Thu, 8 Sep 2011 00:37:40 -0700 Subject: [PATCH] detect indentation, tabs vs spaces --- src/editor.coffee | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/editor.coffee b/src/editor.coffee index 99fde6c35..be36bdabb 100644 --- a/src/editor.coffee +++ b/src/editor.coffee @@ -105,8 +105,18 @@ class Editor extends Pane newSession: (code) -> doc = new EditSession code or '' doc.setUndoManager new UndoManager + doc.setUseSoftTabs useSoftTabs = @usesSoftTabs code + doc.setTabSize if useSoftTabs then @guessTabSize code else 8 doc + usesSoftTabs: (code) -> + not /^\t/m.test code or @code() + + guessTabSize: (code) -> + # * ignores indentation of css/js block comments + match = /^( +)[^*]/im.exec code || @code() + match?[1].length or 2 + copy: -> editor = @ace text = editor.getSession().doc.getTextRange editor.getSelectionRange()