From 494d95d2b3252e68498bb38f411718a9dfadddc5 Mon Sep 17 00:00:00 2001 From: Dhruva Sagar Date: Tue, 1 Mar 2022 13:07:33 +0530 Subject: [PATCH] Add config `g:table_mode_ignore_align`. Fix #145 * Disabled by default, if enabled directs table mode to ignore aligning based on alignment characters on the header and always left aligns --- CHANGELOG.md | 26 ++++++++++++++++++++++++++ README.md | 2 +- autoload/tablemode/align.vim | 6 +++++- doc/table-mode.txt | 11 ++++++++++- plugin/table-mode.vim | 1 + t/config/options.vim | 1 + 6 files changed, 44 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2740f3e..d8ef244 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,31 @@ # Change Log +## Version 4.7.6 +* Add configuration `g:table_mode_ignore_align` + +## Version 4.7.5 +* Improved undo + +## Version 4.7.3 +* Adding option `g:table_mode_tableize_auto_border` to enable automatic border + creation when using Tableize to create tables + +## Version 4.7.2 +* Fix formula evaluation to respect border rows and apply formula expressions + correctly + +## Version 4.6.8 +* Upgrade rake + +## Version 4.6.7 +* Remove auto align feature for insert mode + +## Version 4.6.6 +* Add configuration `g:table_mode_update_time` + +## Version 4.6.5 +* Add support for auto aligning + ## Version 4.6.4.1 * Added a fix for markdown commentstring diff --git a/README.md b/README.md index 54d3177..5786532 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# VIM Table Mode v4.7.5 [![Build Status](https://travis-ci.org/dhruvasagar/vim-table-mode.png?branch=master)](https://travis-ci.org/dhruvasagar/vim-table-mode) +# VIM Table Mode v4.7.6 [![Build Status](https://travis-ci.org/dhruvasagar/vim-table-mode.png?branch=master)](https://travis-ci.org/dhruvasagar/vim-table-mode) An awesome automatic table creator & formatter allowing one to create neat tables as you type. diff --git a/autoload/tablemode/align.vim b/autoload/tablemode/align.vim index 1849740..9c5a585 100644 --- a/autoload/tablemode/align.vim +++ b/autoload/tablemode/align.vim @@ -115,7 +115,11 @@ function! tablemode#align#Align(lines) "{{{2 endfor endfor - let alignments = tablemode#align#alignments(lines[0].lnum, len(lines[0].text)) + if g:table_mode_ignore_align ==# 1 + let alignments = [] + else + let alignments = tablemode#align#alignments(lines[0].lnum, len(lines[0].text)) + endif for idx in range(len(lines)) let tlnum = lines[idx].lnum diff --git a/doc/table-mode.txt b/doc/table-mode.txt index 9ad5f7c..99331cb 100644 --- a/doc/table-mode.txt +++ b/doc/table-mode.txt @@ -1,7 +1,7 @@ *table-mode.txt* Table Mode for easy table formatting =============================================================================== Table Mode, THE AWESOME AUTOMATIC TABLE CREATOR & FORMATTER - VERSION 4.7.5 + VERSION 4.7.6 Author: Dhruva Sagar License: MIT @@ -78,6 +78,7 @@ Manipulation of tables: using |table-mode-insert-column-before-map| or after the cusor using |table-mode-insert-column-after-map|. + *table-formulas* Table Formulas: Table Mode now has support for formulas like a spreadsheet. There are 2 ways of defining formulas : @@ -100,6 +101,7 @@ Table Formulas: You can evaluate the formula line using |:TableEvalFormulaLine| or the mapping |tfe| defined by the option |table-mode-expr-calc-map| + *formula-expressions* Formula Expressions : Expressions are of the format '$target = formula'. @@ -187,6 +189,7 @@ Overview: |table-mode-auto-align| ......... Set if the table mode should auto align as you type |table-mode-tableize-auto-border| Set if tableize adds row borders + |table-mode-ignore-align| ....... Set to ignore alignment characters g:loaded_table_mode *table-mode-loaded* Use this option to disable the plugin: > @@ -376,6 +379,12 @@ g:table_mode_tableize_auto_border Enables adding row borders to tables when created using tableize. > let g:table_mode_tableize_auto_border = 0 < + *table-mode-ignore-align* +g:table_mode_ignore_align + If enabled, ignores alignment characters on the header border and always + left aligns. > + let g:table_mode_ignore_align = 0 +< =============================================================================== MAPPINGS *table-mode-mappings* diff --git a/plugin/table-mode.vim b/plugin/table-mode.vim index f2bf6c3..fcbc8a1 100644 --- a/plugin/table-mode.vim +++ b/plugin/table-mode.vim @@ -61,6 +61,7 @@ call s:SetGlobalOptDefault('table_mode_syntax', 1) call s:SetGlobalOptDefault('table_mode_auto_align', 1) call s:SetGlobalOptDefault('table_mode_update_time', 500) call s:SetGlobalOptDefault('table_mode_tableize_auto_border', 0) +call s:SetGlobalOptDefault('table_mode_ignore_align', 0) if !g:table_mode_always_active "{{{2 exec "nnoremap " g:table_mode_map_prefix . g:table_mode_toggle_map ":call tablemode#Toggle()" diff --git a/t/config/options.vim b/t/config/options.vim index c822f7f..83536ae 100644 --- a/t/config/options.vim +++ b/t/config/options.vim @@ -36,3 +36,4 @@ let g:table_mode_syntax = 1 let g:table_mode_auto_align = 1 let g:table_mode_update_time = 500 let g:table_mode_tableize_auto_border = 0 +let g:table_mode_ignore_align = 0