diff options
author | 2010-11-24 17:33:42 -0500 | |
---|---|---|
committer | 2010-11-24 17:33:42 -0500 | |
commit | d955abad5f427b936393ec92028d1ef01192a8da (patch) | |
tree | 52b71fb0daf59728b072eff694f41b1a6447949e | |
parent | 36b46a6495663512ed8aac96c0e8d03462cb09c4 (diff) | |
download | textadept-d955abad5f427b936393ec92028d1ef01192a8da.tar.gz textadept-d955abad5f427b936393ec92028d1ef01192a8da.zip |
Added key commands and menu options for toggling virtual space.
-rw-r--r-- | core/locale.conf | 1 | ||||
-rw-r--r-- | modules/textadept/keys.lua | 26 | ||||
-rw-r--r-- | modules/textadept/menu.lua | 6 |
3 files changed, 19 insertions, 14 deletions
diff --git a/core/locale.conf b/core/locale.conf index 2f87cfbc..17e6cbab 100644 --- a/core/locale.conf +++ b/core/locale.conf @@ -153,6 +153,7 @@ Toggle _Wrap Mode = Toggle _Wrap Mode Toggle Show _Indentation Guides = Toggle Show _Indentation Guides Toggle Use _Tabs = Toggle Use _Tabs Toggle View White_space = Toggle View White_space +Toggle _Virtual Space = Toggle _Virtual Space EOL Mode = EOL Mode Encoding = Encoding UTF-8 = UTF-8 diff --git a/modules/textadept/keys.lua b/modules/textadept/keys.lua index ad4ed760..df088b44 100644 --- a/modules/textadept/keys.lua +++ b/modules/textadept/keys.lua @@ -155,12 +155,12 @@ local function any_char_mt(f) if #k == 1 then return { f, k, k } end end }) end -local function toggle_setting(setting) +local function toggle_setting(setting, i) local state = buffer[setting] if type(state) == 'boolean' then buffer[setting] = not state elseif type(state) == 'number' then - buffer[setting] = buffer[setting] == 0 and 1 or 0 + buffer[setting] = buffer[setting] == 0 and (i or 1) or 0 end events.emit('update_ui') -- for updating statusbar end @@ -292,11 +292,12 @@ if not OSX then keys['c\t'] = { 'goto_buffer', v, 1, false } keys['cs\t'] = { 'goto_buffer', v, -1, false } keys.ct.v = { - e = { toggle_setting, 'view_eol' }, - w = { toggle_setting, 'wrap_mode' }, - i = { toggle_setting, 'indentation_guides' }, - ['\t'] = { toggle_setting, 'use_tabs' }, - [' '] = { toggle_setting, 'view_ws' }, + e = { toggle_setting, 'view_eol' }, + w = { toggle_setting, 'wrap_mode' }, + i = { toggle_setting, 'indentation_guides' }, + ['\t'] = { toggle_setting, 'use_tabs' }, + [' '] = { toggle_setting, 'view_ws' }, + v = { toggle_setting, 'virtual_space_options', 2 }, } keys.cl = { _m.textadept.mime_types.select_lexer } keys['f5'] = { 'colourise', b, 0, -1 } @@ -424,11 +425,12 @@ else keys['c\t'] = { 'goto_buffer', v, 1, false } keys['cs\t'] = { 'goto_buffer', v, -1, false } keys.at.v = { - e = { toggle_setting, 'view_eol' }, - w = { toggle_setting, 'wrap_mode' }, - i = { toggle_setting, 'indentation_guides' }, - ['\t'] = { toggle_setting, 'use_tabs' }, - [' '] = { toggle_setting, 'view_ws' }, + e = { toggle_setting, 'view_eol' }, + w = { toggle_setting, 'wrap_mode' }, + i = { toggle_setting, 'indentation_guides' }, + ['\t'] = { toggle_setting, 'use_tabs' }, + [' '] = { toggle_setting, 'view_ws' }, + v = { toggle_setting, 'virtual_space_options', 2 }, } keys.cl = { _m.textadept.mime_types.select_lexer } keys['f5'] = { 'colourise', b, 0, -1 } diff --git a/modules/textadept/menu.lua b/modules/textadept/menu.lua index 436f86bb..f94aad56 100644 --- a/modules/textadept/menu.lua +++ b/modules/textadept/menu.lua @@ -36,12 +36,12 @@ local function set_encoding(encoding) buffer:set_encoding(encoding) events.emit('update_ui') -- for updating statusbar end -local function toggle_setting(setting) +local function toggle_setting(setting, i) local state = buffer[setting] if type(state) == 'boolean' then buffer[setting] = not state elseif type(state) == 'number' then - buffer[setting] = buffer[setting] == 0 and 1 or 0 + buffer[setting] = buffer[setting] == 0 and (i or 1) or 0 end events.emit('update_ui') -- for updating statusbar end @@ -230,6 +230,8 @@ menubar = { { toggle_setting, 'indentation_guides' } }, { L('Toggle Use _Tabs'), { toggle_setting, 'use_tabs' } }, { L('Toggle View White_space'), { toggle_setting, 'view_ws' } }, + { L('Toggle _Virtual Space'), + { toggle_setting, 'virtual_space_options', 2} }, { SEPARATOR }, { title = L('EOL Mode'), { L('CRLF'), { set_eol_mode, 0 } }, |