2020-02-16 Simen Heggestøyl * packages/csv-mode/csv-mode.el: Bump version number 2020-02-15 Simen Heggestøyl Add tests for CSV mode * packages/csv-mode/csv-mode-tests.el: New file with tests for csv-mode.el. 2020-02-15 Stefan Monnier * packages/csv-mode/csv-mode.el: Revert part of last change. (csv-end-of-field, csv-beginning-of-field): Don't use csv-field-quotes. I was confused. 2020-01-30 Stefan Monnier * packages/csv-mode/csv-mode.el: New TAB/backtab commands (csv-tab-command, csv-backtab-command): New commands. (csv-mode-map): Bind them. (csv-end-of-field, csv-beginning-of-field): Obey csv-field-quotes. 2019-10-22 Stefan Monnier * packages/csv-mode/csv-mode.el (csv-align--cursor-truncated): Fix C-e case 2019-10-22 Stefan Monnier * packages/csv-mode/csv-mode.el: Auto-shorten columns as well (csv--column-widths): Also return the position of the widest field in each column. (csv-align-fields, csv--jit-align): Update accordingly. (csv--jit-width-change): New function. (csv--jit-merge-columns): Use it on overlays placed on the widest field of each column, to detect when they're shortened. 2019-10-19 Stefan Monnier * packages/csv-mode/csv-mode.el: More cvs-align-mode improvements Rename csv-align-fields-* to cvs-align-*. (csv-transpose): Use split-string. (csv-split-string): Delete function. (csv--config-column-widths): New var. (csv-align--set-column): New function. (csv-align-set-column-width): New command. (csv--jit-align): Use them to obey the per-column width settings. Delay context refresh by jit-lock-context-time. Set cursor-sensor-functions to untruncate fields on-the-fly. (csv-align--cursor-truncated): New function. (csv-align-mode): Activate cursor-sensor-mode. 2019-10-19 Stefan Monnier * packages/csv-mode/csv-mode.el: Fix incorrect truncation (csv--field-index): New function, extracted from csv-field-index. (csv--jit-align): Don't apply csv-align-fields-max-width to the last column. Fix move-to-column call. 2019-10-10 Stefan Monnier * packages/csv-mode/csv-mode.el: Fix header-line's alignment (csv-header-line): Change csv--header-line into an overlay. Add a modification-hooks to auto-refresh the header-line. (csv--header-flush, csv--header-string): New functions. (csv--compute-header-string): Make sure jit-lock was applied. csv--header-hscroll can be nil sometimes somehow! (csv--jit-flush, csv-align-fields-mode): Flush header-line as well. (csv--jit-align): Flush header-line when applicable. Fix typo. 2019-10-09 Filipp Gunbin packages/csv-mode/csv-mode.el: Fix csv-align-fields doc (csv-align-fields): docstring mentioned csv-align-fields instead of csv-align-padding 2019-09-29 Stefan Monnier * packages/csv-mode/csv-mode.el: Remove Francis as maintainer (csv-unalign-fields): Also remove the `invisible` property since we use it to truncate fields in csv--jit-align. (csv-align-fields-max-width): Rename from csv-align-field-max-width to match the "csv-align-fields" prefix. (csv--ellipsis-width): New function. (csv--jit-align): Use it to truncate more correctly. 2019-09-27 Stefan Monnier * packages/csv-mode/csv-mode.el (csv-align-field-max-width): New var (csv--jit-unalign): Erase invisible property as well. (csv--jit-align): Truncate field to fit within csv-align-field-max-width when needed. (csv-align-fields-mode): Add/remove `csv-truncate` to invisibility spec. 2019-09-27 Francis Wright * packages/csv-mode/csv-mode.el: Fix for customize-mode (csv-mode, tsv-mode): Specify :group explicitly for `customize-mode`s benefit 2019-09-24 Stefan Monnier * packages/csv-mode/csv-mode.el: Add tsv-mode and csv-align-fields-mode Require cl-lib. Don't set buffer-invisibility-spec directly. (csv--skip-chars): Rename from misleading csv--skip-regexp. (csv-mode): Set normal-auto-fill-function to really disable auto-fill-mode. (csv--column-widths): Only operate over new args beg..end. (csv-align-fields): No need to narrow before csv--column-widths any more. (csv-align-fields-mode): New minor mode. (tsv-mode): New major mode. 2019-09-18 Simen Heggestøyl Speed up 'csv-align-fields' * packages/csv-mode/csv-mode.el: Bump version number and make the dependency on Emacs 24.1 or higher explicit. (csv--column-widths): Return the field widths as well. (csv-align-fields): Speed up by using the field widths already computed by 'csv--column-widths' (bug#37393). 2017-12-05 Stefan Monnier * csv-mode/csv-mode.el (csv-header-line): New command (csv-menu): Add an entry for it. (csv--header-line, csv--header-hscroll, csv--header-string): New vars. (csv--compute-header-string): New function. 2016-07-11 Paul Eggert Fix some quoting problems in doc strings Most of these are minor issues involving, e.g., quoting `like this' instead of 'like this'. A few involve escaping ` and ' with a preceding \= when the characters should not be turned into curved single quotes. 2016-04-21 Leo Liu Fix csv-mode to delete its own overlays only * csv-mode/csv-mode.el (csv--make-overlay, csv--delete-overlay): New functions. (csv-align-fields, csv-unalign-fields, csv-transpose): Use them. 2016-03-04 Francis Wright * csv-mode/csv-mode.el: Remove out-of-date "URL:" header. 2016-03-03 Stefan Monnier * csv-mode, landmark: Fix maintainer's email 2015-07-09 Leo Liu Fix column width calculation in cvs-mode.el * csv-mode/cvs-mode.el (csv--column-widths, csv-align-fields): Fix column width calculation. 2015-05-24 Leo Liu * csv-mode/cvs-mode.el (csv-set-comment-start): Handle nil. See also http://debbugs.gnu.org/20564. 2015-04-15 Stefan Monnier (csv-mode): Set mode-line-position rather than mode-line-format. Fixes: debbugs:20343 * csv-mode/csv-mode.el (csv-mode-line-format): Only keep the CSV part of the mode line. 2014-01-15 Stefan Monnier * csv-mode (csv-mode-line-help-echo): Remove. 2013-04-24 Stefan Monnier * csv-mode.el (csv-kill-one-field): Check for presence before deleting trailing separator. Remove last arg and turn into a function. (csv-kill-one-column, csv-kill-many-columns): Adjust callers. 2012-10-22 Stefan Monnier * packages/csv-mode/csv-mode.el (csv-end-of-field): Don't skip TABs. (csv--skip-regexp): Rename from csv-skip-regexp. 2012-10-10 Stefan Monnier * csv-mode.el: Bump version number. 2012-10-10 Stefan Monnier * csv-mode.el: Use lexical-binding. Remove redundant :group args. (csv-separators): Add TAB to the default. (csv-invisibility-default): Change default to t. (csv-separator-face): Inherit from escape-glyph. Remove variable. (csv-mode-line-format): Remove trailing "--". Move next to line-number. (csv-interactive-args): Use use-region-p. (csv--column-widths): New function, extracted from csv-align-fields. (csv-align-fields): Use it. Use whole buffer by default. Use :align-to and text-properties when possible. (csv-unalign-fields): Also remove properties. (csv-mode): Truncate lines. 2012-03-24 Chong Yidong Commentary fix for quarter-plane.el. 2012-03-24 Chong Yidong Commentary tweaks for csv-mode, ioccur, and nhexl-mode packages. 2012-03-24 Chong Yidong csv-mode.el: Improve commentary. 2012-03-12 Stefan Monnier * packages/csv-mode/csv-mode.el: Minor installation cleanups. Fix up copyright notice. Set version. (csv-separators, csv-field-quotes): Fix calls to `error'. (csv-mode-line-help-echo, csv-mode-line-format): Replace mode-line-format for default-mode-line-format. (csv-mode-map): Declare and initialize. (csv-mode): Add autoload cookie. (csv-set-comment-start): Make sure vars are made buffer-local. (csv-field-index-mode, csv-field-index): Use derived-mode-p. (csv-align-fields): Improve insertion types of overlay's markers. 2012-03-12 Stefan Monnier Add csv-mode.el.